namespace ConsoleApi.Models;

/// <summary>
/// 天气影响模型
/// </summary>
public class WeatherImpact
{
    public AlertSeverity Severity { get; set; } = AlertSeverity.None;
    public string Description { get; set; } = string.Empty;
    public List<string> Recommendations { get; set; } = new();
}

/// <summary>
/// 生产活动扩展模型
/// </summary>
public class ProductionActivityExtended : ProductionActivity
{
    public RiskLevel RiskLevel { get; set; } = RiskLevel.Low;
}

/// <summary>
/// 时间调整模型
/// </summary>
public class ScheduleAdjustment
{
    public string Type { get; set; } = string.Empty;
    public string Description { get; set; } = string.Empty;
    public Priority Priority { get; set; } = Priority.Medium;
}

/// <summary>
/// 安全措施模型
/// </summary>
public class SafetyMeasure
{
    public string Category { get; set; } = string.Empty;
    public string Description { get; set; } = string.Empty;
    public bool IsRequired { get; set; }
}

/// <summary>
/// 设备建议模型
/// </summary>
public class EquipmentRecommendation
{
    public string EquipmentType { get; set; } = string.Empty;
    public string Recommendation { get; set; } = string.Empty;
    public Priority Priority { get; set; } = Priority.Medium;
}

/// <summary>
/// 优先级枚举
/// </summary>
public enum Priority
{
    Low = 0,
    Medium = 1,
    High = 2,
    Critical = 3
} 